package com.zp.self.module.level_4_算法练习.数据结构.String;

import org.junit.Test;

/**
 * @author By ZengPeng
 */
public class 力扣_771_宝石与石头 {
    @Test
    public void main() {

        System.out.println(numJewelsInStones("aA","aAAbbbb"));
    }

    /**
    题目：给你一个字符串 jewels 代表石头中宝石的类型，另有一个字符串 stones 代表你拥有的石头。 stones 中每个字符代表了一种你拥有的石头的类型，你想知道你拥有的石头中有多少是宝石。
          字母区分大小写，因此 "a" 和 "A" 是不同类型的石头。

     示例 1：
     输入：jewels = "aA", stones = "aAAbbbb"
     输出：3

     示例 2：
     输入：jewels = "z", stones = "ZZ"
     输出：0

    分析：【P 💔】
       1.位图：遍历拥有的石头
                --执行用时：0 ms, 在所有 Java 提交中击败了100.00%的用户
                --时长：3分钟

    边界值 & 注意点：
       1.
     **/
    public int numJewelsInStones(String jewels, String stones) {
        boolean[] have = new boolean[132];
        for (char c : jewels.toCharArray())
            have[c] =true;
        int result =0;
        for (char c : stones.toCharArray()) {
            if(have[c])
                result++;
        }
        return result;
    }
}
